****************************************************************************
*
* IHADCB - I HAD A DCB DSECT FOR PC/370 RELEASE 2.0+ FILE DATA CONTROL BLOCK
*
* FOR MORE INFORMATION SEE SVC.DOC
*
****************************************************************************
IHADCB   DSECT
DCBDCB   DS    CL4 CONSTANT EBCDIC C'ADCB' DCB IDENTIFIER
DCBDSN   DS    A   ADDRESS OF UP TO 64 BYTE PATH/FILE SPEC FOLLOWED BY ZERO
DCBFID   DS    H   FILE HANDLE ASSIGNED BY MS-DOS AT OPEN (X'FFFF'DEFAULT)
DCBFLG   DS    X   DATA CONTROL BLOCK FLAGS (ONLY DFTRAN MAY BE SET BY USER)
DFOPEN   EQU   X'80' FILE OPEN
DFUBUF   EQU   X'40' USER DEFINED BLOCK AREA (NO DYNAMIC ALLOC/DEALLOC)
DFOUT    EQU   X'20' OPEN FOR OUTPUT
DFGEOF   EQU   X'10' END OF FILE PENDING ON SHORT BLOCK
DFTRAN   EQU   X'08' TRANSLATE GET/PUT RECORDS FOR ASCII FILE
DFADCB   EQU   X'01' ASSIST DCB - DO NOT TRANSLATE 370 ADDRESSES
DSORG    DS    C   DATA SET ORGANIZATION (R=RANDOM, S=SEQUENTIAL)
MACRF    DS    C   DATA SET ACCESS MODE (R=READ, W=WRITE, G=GET, P=PUT)
RECFM    DS    C   DATA SET RECORD FORMAT (F=FIXED, V=VAR, T=TEXT)
EOR      DS    X   END OF RECORD CODE (DEFAULT IS LINE FEED X'0A')
EOF      DS    X   END OF FILE CODE   (DEFAULT IS CTL-Z X'1A')
LRECL    DS    H   RECORD LENGTH (2<LRECL<64K-16)
BLKSZ    DS    H   BLOCK  LENGTH (2<BLKSZ<64K-16)
EODAD    DS    A   END OF DATA EXIT ADDRESS
SYNAD    DS    A   SYCHRONOUS ERROR EXIT ADDRESS
RCD      DS    A   RECORD AREA ADDRESS FOR GET/PUT
BLK      DS    A   BLOCK  AREA ADDRESS (0 FOR DYNAMICALLY ALLOCATED)
RBA      DS    A   RELATIVE BYTE ADDRESS FOR RANDOM READ/WRITE
REN      DS    A   RENAME ASCIIZ FILE (ONLY USED BY RENAME SVC)
IOCNT    DS    F   BLOCK I/O COUNT SINCE OPEN
PRECL    DS    H   PHYSICAL BLOCK SIZE OF LAST READ/WRITE
*
* RESERVED AREA FOR USE BY PC/370 IOS SUPERVISOR WHILE FILE OPEN
*
DSNSG    DS    XL4 SEGMENT:OFFSET OF DCBDSN PATH/FILE NAME
EODSG    DS    XL4 SEGMENT:OFFSET OF EODAD EXIT
SYNSG    DS    XL4 SEGMENT:OFFSET OF SYNAD EXIT
RCDSG    DS    XL4 SEGMENT:OFFSET OF RECORD AREA FOR GET/PUT
RENSG    DS    XL4 SEGMENT:OFFSET OF RENAME FILE NAME
BLKSG    DS    XL4 SEGMENT:OFFSET OF BLOCK AREA
BLKPTR   DS    XL4 SEGMENT:OFFSET OF CURRENT RECORD IN BLOCK AREA
BLKEOD   DS    XL2 OFFSET OF CURRENT END OF DATA IN BLOCK AREA
BLKEND   DS    XL2 OFFSET OF END OF ALLOCATED BLOCK AREA
WLRECL   DS    H   REVERSED LRECL
WBLKSZ   DS    H   REVERSED BLKSZ
LDCB     EQU   *-IHADCB
